/* Использование LCD Функций низкого уровня для дисплеев с 4x40 символов */

/* Используется LCD 4x40, микроконтроллер AT90S2313.
   Схема подключения см. рис. 380 */ 

/* Выведем изображение курсора в виде мигающего знакоместа в начало 3-ей
   строки дисплея (счет строк начинается с 1) */

#include <90s2313.h> 	// подключаем  заголовочный файл используемого 
					// микроконтроллера AVR
 
/* Перед подключением файла lcd4x40.h, объявим порт, используемый 
   для подключения модуля LCD */

/* Используем Порт B микроконтроллера AT90S2313 
   Адрес порта находим в файле 90s2313.h в строке: sfrb PORTB=0x18; */
#asm
		.equ __lcd_port=0x18
#endasm
 
/* Теперь, перед использованием LCD Функций для дисплеев с 4x40 
   символов, подключим заголовочный файл lcd4x40.h */ 
#include <lcd4x40.h>

/* Основная функция программы */ 

void main(void) 
{
_en1_msk=LCD_EN2; 	// выберем контроллер нижней половины LCD 
_lcd_ready();		// ждем, пока модуль LCD не будет готов 
// принять данные
_lcd_write_data(0x01); 	// очищаем экран
_lcd_write_data(0x02); 	// установим курсор в нулевую позицию 
// 3-й строки дисплея (если счет строк
// начинать с 1)
_lcd_write_data(0x0f); 	// Включим экран, включим курсор, изображение
// курсора сделаем в виде мигающего знакоместа 
// (см. табл. 62-64, стр. 479)
		while (1); 			// закончим программу бесконечным циклом 
}
